#define _CRT_SECURE_NO_WARNINGS 1

#include "Heap.hpp"

void test1()
{
	vector<int> a = { 27, 15, 19, 18, 28, 34, 65, 49, 25, 37 };
	HeapSort(&*a.begin(), a.size());
	for (int& x : a)
		cout << x << " ";
}


void test2()
{
	Heap<int> hp1;
	hp1.Push(19);
	hp1.Push(15);
	hp1.Push(13);
	hp1.Push(12);
	hp1.Print();
}


void test3()
{
	vector<int> arr = { 1, 2, 3, 4, 5, 6, 9, 10, 150, 88, -1, 0 };
	vector<int> smallestOfK = smallestK(arr, 5);
	for (int& x : smallestOfK)
		cout << x << " ";
	cout << endl;

	vector<int> bigestOfK = bigestK(arr, 5);
	for (int& x : bigestOfK)
		cout << x << " ";
	cout << endl;
}

int main()
{
	// test1();
	// test2();
	test3();
	return 0;
}